package cn.edu.scau.cmi.ema.service;

import cn.edu.scau.cmi.ema.base.CmiPagination;
import cn.edu.scau.cmi.ema.domain.Video;

import java.util.List;
import java.util.Map;
import java.util.Set;


public interface VideoService {

	public Video saveVideo(Video video);

	public Set<Video> loadVideos();

	public Set<Video> loadReferenceVideos(Set<Video> videos);

	public Set<Video> loadVideosByIdSet(Set<Integer> videosId);

	public Map<String, ?> loadVideoObjectReferencedSet(Video video);

	public Map<String, ?> loadVideoClassReferencedSet(Video video);

	public void deleteVideo(Video video);

	public void deleteVideos(Set<Integer> deleteVideosId);

	public List<Video> findAllVideos(Integer startResult, Integer maxRows);

	public Video findVideoByPrimaryKey(Integer id);

	public Integer countVideos();

	public Integer countVideos(CmiPagination page);

	public Integer countVideosByName(String queryName);

	public Integer countVideosByDetachedCriteria(CmiPagination page);

}
